﻿///////////////////////////////////////////////////////////////////////////////
// 文件名： RenderWindow.hpp
// 作者：   671643387@qq.com
// 日期：   2015年11月1日 下午7:09:46
// 简介：   
///////////////////////////////////////////////////////////////////////////////

#if !defined(GRAPHICS_GRAPHICS_RENDER_RENDERWINDOW_HPP_)
#define GRAPHICS_GRAPHICS_RENDER_RENDERWINDOW_HPP_

#if defined(_MSC_VER) && (_MSC_VER >= 1200)
# pragma once
#endif

#include <boost/noncopyable.hpp>
#include <boost/shared_ptr.hpp>

#include <graphics/Type.hpp>

namespace graphics
{
    namespace graphics
    {
        namespace render
        {
            class RenderWindow : public boost::noncopyable
            {
            public:
                typedef struct _stProperties
                {
                    ::graphics::wchar* icon;
                    ::graphics::wchar* iconSmall;
                    ::graphics::wchar* cursor;

                    ::graphics::wchar* title;
                    int width;
                    int height;
                    bool fullScreen;
                    bool centerScreen;
                }stProperties;

            public:
                RenderWindow(void){}
                virtual ~RenderWindow(void){}

            public:
                virtual void SetTitle(::graphics::string title) = 0;
                virtual ::graphics::string GetTitle(void) const = 0;
            };

            typedef boost::shared_ptr<RenderWindow> RenderWindowPtr;
        }
    }
}

#endif //GRAPHICS_GRAPHICS_RENDER_RENDERWINDOW_HPP_
